public class Test {
    public static void main(String[] args) {
        //float 4字节
        //double 8字节
        System.out.println(Double.MAX_VALUE);
        //输出浮点数非负的最小整数
        System.out.println(Double.MIN_VALUE);
        System.out.println();
        //long 8字节
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);
        System.out.println();
        //short
        System.out.println(Short.MAX_VALUE);
        System.out.println(Short.MIN_VALUE);
        System.out.println();
        //byte
        System.out.println(Byte.MAX_VALUE);
        System.out.println(Byte.MIN_VALUE);

    }
    public static void main4(String[] args) {
        /*int a=10;
        float b=1.2f;
        double c=1.2;
        long d=100L;//不建议写成小写l

        boolean flag=true;
        //a=(int)flag;//此处报错，boolean类型的值不能和任何类型进行转换

        //在java中char是两个字节，没有负数
        //而一个中文字符刚好需要两个字节
        char ch='A';
        System.out.println(ch);
        char ch2='为';
        System.out.println(ch2);//它的类是Character*/
    }
    public static void main3(String[] args) {
        //byte的范围是-128~127
        /*byte b1=125;
        byte b2=123;
        byte b3=(byte)(b1+b2);//此处b1+b2的结果是int类型，被提升的,所以要放到b3中要经过强转
        System.out.println(b3);//结果：0，1，2，，127，-128，-127，，-9，-8

        int b4=b1+b2;
        System.out.println(b4);*/
    }
    public static void main2(String[] args) {
        //在c语言中没有字符串这种数据类型，但是Java有

        //c语言
//        char *p="123";
//        char[] arr="nihao";

        //java
//        String str="weilai";
//        System.out.println(str);

        /*int a=100;
        String s1=String.valueOf(a);
        System.out.println(s1);

        String s2=a+"";
        System.out.println(s2);

        String s3=10+20+"x";//这里先运算10+20
        String s4="x"+10+20;//而这里“x”+10-->“x10”+20中的"x10"已经成了字符串

        System.out.println(s3);
        System.out.println(s4);*/

       /* String str3="1009";
        int ret=Integer.valueOf(str3);
        System.out.println(ret+1);

        int ret1=Integer.parseInt(str3);
        System.out.println(ret1+1);*/


    }
    public static void main1(String[] args) {
        /*System.out.println(5/2);//int/int -->int
        System.out.println((float)5/2);//float/int-->float
        System.out.println(5/(float)2);//int/float-->float
        System.out.println((float)(5/2));//int/int-->int-->float
*/

        //结果的符号取决于被除数的符号
        /*System.out.println(10%3);
        System.out.println(10%-3);
        System.out.println(-10%3);
        System.out.println(-10%-3);

        System.out.println(11.5%2);*/

        //System.out.println(10/0);//此处触发算术类异常

        /*long d=10;
        int c=1;
        //c=c+d;//这里会报错，因为将long类型的结果放到int里面
        c+=d;//这里不会报错是因为此类运算符会自动帮你进行强转*/

        /*int a=1;
        System.out.println(3<a<5);//在Java中这样写会报错,因为a>3是boolean值，false<5这个表达式是没有意义的
        */

        //正常情况下下面两块效果差不多
        //这一块运行不会报错，因为发生了短路
        /*System.out.println(10>20&&10/0==0);
        System.out.println(10<20||10/0==0);

        //这一块运行会报错，因为不会发生短路
        System.out.println(10>20&10/0==0);
        System.out.println(10>20|10/0==0);*/



    }
}
